package com.zhengqing.app.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zhengqing.app.entity.Test;
import com.zhengqing.app.model.dto.TestPageDTO;
import com.zhengqing.app.model.vo.TestPageVO;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Update;

/**
 * <p> 测试 mapper </p>
 *
 * @author zhengqingya
 * @description
 * @date 2024/5/13 15:23
 */
public interface TestMapper extends BaseMapper<Test> {

    /**
     * 分页
     *
     * @param filter 查询参数
     * @return 响应结果
     * @author zhengqingya
     * @date 2024/5/17 17:40
     */
    IPage<TestPageVO> page(IPage<TestPageVO> page, @Param("filter") TestPageDTO filter);

    /**
     * 根据id更新名称
     *
     * @param id   主键id
     * @param name 名称
     * @return void
     * @author zhengqingya
     * @date 2024/5/13 15:48
     */
    @Update("update t_test set name = #{name} where id = #{id}")
    void updateName(@Param("id") Integer id, @Param("name") String name);

    /**
     * 根据名称删除数据
     *
     * @param name 名称
     * @return void
     * @author zhengqingya
     * @date 2024/5/13 15:48
     */
    void deleteByName(@Param("name") String name);

}
